/**
 * 版权所有(C)，上海勾芒信息科技，2017，所有权利保留。
 * 
 * 项目名：	cards-web
 * 文件名：	RsAppService.java
 * 模块说明：	
 * 修改历史：
 * 2017年4月21日 - Debenson - 创建。
 */
package com.alex.insistence.rest.app;

import javax.validation.constraints.NotNull;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.Response;

import com.gomore.jeecg.common.ServiceException;
import com.gomore.jeecg.rest.common.ContentType;

/**
 * 与小程序相关服务。
 * 
 * @author Debenson
 * @since 0.1
 */
@Path("/wxapp")
@Consumes({
    ContentType.APPLICATION_JSON_UTF_8 })
@Produces({
    ContentType.APPLICATION_JSON_UTF_8 })
public interface RsAppService {

  /**
   * 创建显示小程序指定页面的二维码。
   * 
   * @param tenantId
   *          租户id，非空。
   * @param path
   *          小程序的页面的路径，非空，示例：pages/discovery/discovery
   * @param size
   *          二维码大小，可空。 默认值：430
   * @param type
   *          二维码类型，可空。 取值： qrcode（狗皮膏药式二维码)和wxacode(菊花式小程序码)，默认为qrcode
   * @return 二维码图片
   * @throws ServiceException
   *           操作失败抛出此异常。
   */
  @GET
  @Path("/{tenant_id}/qrcode")
  @Produces("image/jpg")
  public Response createQrCode(@NotNull @PathParam("tenant_id") String tenantId,
      @NotNull @QueryParam("path") String path, @QueryParam("size") int size,
      @QueryParam("type") String type, @QueryParam("storeId") String storeId)
      throws ServiceException;
  
}
